尴尬!中国首款编程语言 实则换皮 抄Python

原标题:尴尬!中国首款编程语言“木兰”疑抄袭 Python,说好的自主研发呢?

近日,中国科学院计算技术研究所计算机体系结构国家重点实验室宣布,由该实验室编译组主导研发的国产编程语言“木兰(Mulan)”正式发布。

更重要的是,这是由我国科研人员自主设计、开发和实现的编程语言,与之配套的编译器与集成开发工具,也由科研团队自主实现。

这本是一件值得高兴的事,然而,这款备受期待的编程语言却受到了不少开发者的吐槽。

定位于面向智能物联应用

据中科院计算所副研究员、计算机体系结构国家重点实验室编译组负责人刘雷对《中国科学报》介绍,这款编程语言充满中国风的名字(木兰,Mulan)原本是 Module Unit Language(模块单元语言)的简写。他说:

我们最初就是想做一种能像模块一样方便的、可以随时扩展语言的编程语言,缩写词“Mulan”中的“M”是希腊第十二个字母(音近“谬”),表示“微小”的意思,表明这是一款简易的语言,没想到,中科院计算所学术委员会主任徐志伟一下就念成了“木兰”......我们都觉得“木兰”更好,有浓浓的中国文化印记。用“木兰”命名这样一款国产编程语言,再合适不过。

雷锋网注:工作人员演示基于木兰编程语言的“下棋机器人”

具体来说,木兰是是一款定位于面向智能物联应用的编程语言,采用创新的弹性 actor 执行模型(擅长执行并行计算),可成倍地提高应用执行效率,在提高服务质量的同时大幅降低平台运营成本。

如今,在智能物联应用领域,尚无一款专用的编程语言,在既有的语言系统中做智能应用开发,需要多个工程师、跨多种语言实现,导致开发效率低下;而“木兰”就致力于打造物联网智能执行平台,并为编写的应用程序提供执行环境。

雷锋网了解到,由于“木兰”编程语言的语法更加宽松,更适合初学者学习掌握,目前,木兰已率先在编程教育方面投入应用。它同时支持模拟仿真和调试功能,在软件上既可以验证软件和硬件设计的正确性;支持跨平台,对 Android、IOS、Linux、Windows 都可以很好的兼容;更重要的一点是,它可以很好地支持龙芯等国产处理器,后续会支持更多类型的国产处理器。

刘雷继续说道:

如 Google 在云计算领域推出的 Go 语言、苹果公司自行设计的 Swift 语言、Oracle 控制的 Java 语言标准等等。一旦某个编程语言在一个领域建立了自己的生态系统,那么它的地位几乎很难撼动。

而木兰编程语言的开发团队也表示,将致力于把这款语言打造为“智能物联时代的 C 语言”。

是木兰,还是 Python?

在美国宣布限制 AI 软件出口中国之际(详见雷锋网此前报道),“木兰”的诞生显得格外振奋人心,一时间也在网络上引起了热议。

然而,在木兰编程语言发布之后,国内开发者怀着期待下载研究后却对其产生了质疑:原来木兰是 Python?

根据 CSDN 博主“沉迷单车的追风少年”的反馈,木兰的下载速度非常慢,而且无论是从图标上来看,还是根据内部提供的函数显示,木兰都与 Python 语言几乎一模一样。

而且在安装后的文件夹里,出现了大量的“.pyd”文件——这正是 Python 语言常见的文件格式。有开发者总结道,木兰似乎就是建立在 Python 之上,就像在顶层做了一个接口,而底层编译、优化等其他工作仍然由 Python 来做。

这显然不能称为是“一门自主产权编程语言”,毕竟,如果想要在特定领域开发一门全新语言,底层优化与设计都需要“重新来过”。

随着网友的进一步探索,这款编程语言背后的研发企业也被扒了出来,是一个叫作“中科智芯”的企业,中国科学院为其股东之一。然而,雷锋网尝试了几次,中科智芯官网均无法访问;根据企查查上的信息显示:

中科智芯是一家教育信息化整体解决方案提供商,拥有自主研发教育软件、硬件、课程体系的技术,旗下研发了硬件与软件两类课程产品,并设有少儿探究空间、创客实验室、虚拟交互实验室、人工智能实验室、交互艺术实验室。

雷锋网注:上图为知乎网友余天提供的截图

根据以上信息以及知乎网友提供的中科智芯官网图片,相比起研究机构,中科智芯更像是一家专注于编程课程的公司。另外,中科院计算所官网上找不到与“木兰”相关的任何内容;木兰编程语言的下载网址也已无法打开。

这一系列的操作让不少网友怀疑,近期被刷屏的”木兰“相关文章可能是打着“自主产权”的幌子来实现企业的推广目的。

似曾相识的红芯浏览器事件

对木兰编程语言的吐槽在网络上不断发酵,不免让人想起此前的类似的事件。

2018 年 8 月 15 日,自主研发浏览器核心产品的红芯公司(redcore)宣布完成 2.5 亿元融资,并自称打破了美国垄断,拥有中国首个自主创新的智能浏览器内核。(详见雷锋网(公众号:雷锋网)此前报道)

按理来说,在国内较为主流的浏览器(包括 360、百度、搜狗等)均使用的是谷歌 Chrome 浏览器的 Blink 内核的背景下,红芯自研出浏览器内核本是一件值得高兴的事情。

然而,很快就有网友曝出,红芯浏览器的众多设置与谷歌 Chrome 雷同,安装文件的目录结构也很相似,安装程序 Redcore.exe 的属性甚至显示为 Chrome。而且,其版本号为 49.1.2623.213,当时最新版的 Chrome 已经到了 v69.0.3493.3。

另外,红芯的 redcore 与 Blink 等浏览器内核完全不是一个量级的,它只是在 chromium 基础上造的轮*,仔细看两个 logo 其实都有相通之处。

有知乎网友吐槽:

这造假就太低劣了,就换了个启动器改下入口参数就敢出来放出来行骗了。怕不是见惯了上头的弱智还以为公众都是那么好糊弄的。

2018 年 8 月 17 日,红芯方面发表致歉信表示,公司在融资宣传中存在一定程度的夸大,给公众带来了误导,并承认红芯内核基于谷歌 Chromium 开源项目。

中科院计算所团队“完全自主设计、开发和实现”的“木兰”编程语言是Python语言的套壳产品?针对近日这一网络质疑,1月17日,项目负责人、中科院计算所编译实验室员工刘雷在科学网上发表回应称,木兰语言在8位单片机上的编译器是本团队开发的,在32位单片机上的编译器是基于Python开源编译器进行的二次开发,但在接受采访中将木兰编程语言和编译器夸大为完全自主开发。

刘雷关于“木兰”编程语言的情况说明全文如下:

本人系中科院计算所编译实验室员工。基于我在编译技术上的科研积累创办了中科智芯(北京)科技有限公司,该公司围绕青少年编程教育,设计开发编程语言、编译器和集成开发环境等产品。

为了更好地在中小学中普及计算思维,本人带领团队开发了一种称为“木兰”的编程语言。它包含三个组成部分:一、在语言规范上借鉴了Lua语言的特性并进行了扩展,增加数据表达方法等新的特性;二、开发了支持少儿编程教育的可视化编程环境;三、针对8位AVR单片机,实现了相应的编译器和运行时系统,开发了能模拟多任务执行的虚拟机。以上产品已经在数百所中小学中,开展了10万人次的编程科普活动。

针对STM32单片机,我们是基于Python开源编译器进行的二次开发,也就是先将木兰语言的源程序转换为Python的中间表示(AST),再在Python虚拟机上运行。这就是在开发和运行环境中会包含Python系统的原因。

在1月15日接受媒体采访时,本人在对木兰编程语言的介绍中,犯了以下错误:

1。 木兰编程语言主要是用于中小学教育,在介绍中将它扩大到智能物联领域。

2。 木兰语言在8位单片机上的编译器是本团队开发的,在32位单片机上的编译器是基于Python开源编译器进行的二次开发,但在接受采访中将木兰编程语言和编译器夸大为完全自主开发。

对于此次在网络上造成的不良影响,本人郑重道歉,对给中科院、中科院计算所带来的不良后果表示诚挚的歉意。本人感谢大家的监督与批评,并深刻反省,保证不再出现类似问题。

此前,据中国新闻网等多家媒体报道,中国科学院计算技术研究所(以下简称中科院计算所)1月15日正式对外发布该所计算机体系结构国家重点实验室编译技术团队自主研发、面向新一代人工智能和物联网应用的“木兰”编程语言体系,并推出“木兰”开源软件包,供全球用户免费下载获取。

但随后网络上争议四起,知乎网友@沉迷单车就指出,从网络下载的“木兰”语言编辑器程序图标来看,与用著名编程语言Python生成的应用程序图标完全一致。“都不换个图标吗?”他问道。

澎湃新闻记者并未在中科院计算所或计算机体系结构国家重点实验室官方网站上找到“木兰”的发布信息,亦无下载链接。

“木兰”的下载渠道在一家名为“中科智芯”的公司网站上。据企业主页介绍,中科智芯(北京)科技有限公司是中国科学院计算技术研究所孵化企业,源中科院计算所计算机体系结构国家重点实验室而成立。

“木兰”编程语言是该公司的重点产品,企业介绍称,“木兰”是“专为人工智能教育而生的中国自主知识产权编程语言,由中科智芯自主研发。语言设计上屏蔽了其他任何一种针对成人设计的编程语言特性,如编程环境调试复杂等,让学生在编程语言学习之初不为细节所牵绊,具有更易理解、易于学习、易于阅读、易于维护等特性;且支持跨平台,对Android、UNIX、Windows都可以很好的兼容。”

有计算机业内人士对澎湃新闻记者表示,从目前能掌握的情况来看,“木兰”语言更像是Python语言的“套壳”产物。“这个软件就是在Python语言外边套了一层壳,还是比较简单的那种,相当于一个接口,连图标都没有改。”

“木兰”图标

使用Python制作的文件图标

“对这个exe文件进行反向编译后可以发现,整个结构就是Python环境,比如其中有一个‘lib2to3’文件夹,就是只有python才会有的,是转换python2到python3的lib。”上述业内人士对记者表示。

“木兰”反向编译结果

不过,上述业内人士也对记者表示,“还是要看‘木兰’的源代码,才能确定这个语言到底有多少自主研发成分,以及多少是来自Python语言。现在从公司网页上无法看到源代码,也就是说还没做到完全开源。”

据此前报道,刘雷介绍称,“木兰”是中科院计算所团队完全自主设计、开发和实现的编程语言,与之配套的编译器与集成开发工具也完全由团队自主实现,“是我们真正掌握核心技术的编程语言”。

其介绍称,“木兰”定位为下一代重要应用——物联网应用开发语言,打造物联网智能执行平台,其采用最新的编程语言设计理念和编译技术,在考虑性能的设备处理层,它提供面向轻量级物联网设备和领域特定专用加速器的编程特性;在应用层面,它提供面向通用计算设备的编程语言并支持多种领域的定制化元编程。

据了解,以“木兰”为基础延伸的自主研发编程软件、人工智能教材、教学装备现已投入中小学、幼儿园使用,截至目前,“木兰”应用范围已涵盖中国18个省市共700所中小学。

工商信息显示,中科智芯(北京)科技有限公司持股70%的大股东是中科编易(北京)科技有限公司,而后者的大股东正是刘雷。

中科院计算所计算机体系结构国家重点实验室网站显示,刘雷,博士,工程师一级,在编程语言和并行编译技术方向上具有丰富的科研和工程经验,先后承担过国家863项目、核高基重大专项项目的子课题,所研发的技术成果达到世界先进水平,在多个顶尖的国际会议和权威期刊上都发表论文10余篇。其开发的自动并行化编译器的加速效果要明显好于世界上最好商用编译器Intel编译器。

Python在1991年由荷兰人Guido van Rossum发明,是一种跨平台的计算机程序设计语言,近几年因机器学习大热而受到关注。

声明:该文观点仅代表作者本人,加国头条 属于信息发布平台,加国头条 仅提供信息存储空间服务。

分享新闻到
微信朋友圈
扫描后点
右上角分享

0 Comments

Leave a Comment

Ad

Related Posts: